This invention relates generally to monitoring data packets transmitted over a network, and more specifically to real-time load balancing of packets between multiple network probes.
To optimize the performance and operation of modern computer networks, network operators routinely use network probes to monitor network traffic as well as measure end-user experience by calculating performance and quality parameters in real-time. These parameters include, but are not limited to, bit rate, jitter, packet drop rate or bit error rate, and packet latency. However, the enormous, and increasing, amounts of data transmitted over wired and wireless networks at high data transfer speeds, particularly with the introduction of the 10 gigabit (“10 GbE”) networking standard, present a challenge to real-time monitoring of network performance.
Network performance monitoring is further complicated by telecommunications routers and gateways using new architectures, some of which are designed to support the 10 GbE networking standard for mobile networks. These architectures are also used, in part, to enable network service providers to prioritize certain types of network traffic. Unlike prior architectures, control plane and user plane packets corresponding to a single session-instance (that is, one of potentially many sessions operating on a single client device) are not necessarily transmitted through a network using the same link between a first gateway and a second gateway. Because control plane and user plane packets corresponding to a single session-instance can travel on different links, the network probes may be unable to track the packets corresponding to an end-user's single session-instance, and therefore be unable to monitor the session performance and/or quality of the network.
Furthermore, because the user plane and control plane packets corresponding to a single session-instance do not necessarily travel on the same link between the first gateway and the second gateway, the network probes used to monitor network performance and/or quality can be under- or over-utilized. That is, the distribution of packets (whether user plane or control plane) sent to each network probe can become unbalanced, leading to some systems becoming overwhelmed with packets while other systems are under-utilized. Therefore, because session-instances cannot be analyzed as a whole and because the packet distribution between the network probes is uneven, the ability to monitor network performance and/or quality in real-time, and the ability to respond to network conditions in real-time, is inhibited.